In queue based messaging system throughput of messages can be variable. In some cases after a system recovery or at peak processing times it is possible for very large volumes of data to be sent at once and for messaging endpoints/queues to become flooded. Sometimes this may result in queues overflowing and even lost messages. This scenario could also occur as part of a denial of service attack on a messaging system. In messaging application programming interfaces (API) such as Java Message Service (JMS) there is no dynamic mechanism for throttling load or number of connections to a resource such as a queue to ensure it is not overwhelmed. One example of this is where store and forward processing is used. If the endpoint which is sent messages goes down, then the messages being stored can grow to a large number. Accordingly, when the endpoint recovers, a very large and sudden burst of messages will be sent to the endpoint for processing.